1. Field of the Invention
The present invention relates generally to an improved data processing system, and in particular to a computer implemented method and computer program product for detecting and communicating boot failures in a client device.
2. Description of the Related Art
In a client-server environment, a client device which comprises a Point of Sale (POS) system is typically connected to a server using a closed Ethernet network. A point of sale system may be used in a wide variety of retail businesses such as a supermarket, a convenience store, or the like, for performing such processes as calculating the total price of a purchase (goods or services) and calculating the amount of change due to a customer. Some point of sale terminals furthermore track purchases made and adjust a database of store inventory accordingly.
Point of sale systems are increasingly including system management capabilities and diagnostic tools. This increase is driven by the fact that local resources have limited technical skill and point of sale systems are often installed geographically dispersed (and some by necessity) from the technical skill of a central Information Technology (IT) staff. In order to reduce the total cost of ownership, the system management and diagnostic tools in the point of sale systems are designed to allow the systems to provide detailed fault information to the central IT site, such that faults which occur at the point of sale systems and require the physical presence of service personnel may be corrected quickly, efficiently, and in one trip.
However, there are many fault conditions which can prevent a computing device such as a point of sale system from booting the operating system, thereby preventing the systems management drivers/diagnostic tools from communicating any information about the detected failure. The examples include a failed hard disk drive (HDD), a corrupt file on the hard disk drive, an incomplete Preboot Execution Environment (PXE) load, or bad memory (i.e., fault in high memory which allows Power-On-Self-Test (POST) or the computer's pre-boot sequence to run).